import { defineStore } from 'pinia'
import { ref } from 'vue'
import type { PartialConsult } from '@/types/consult'
import { ConsultType } from '@/enums'

// ajax 请求 统一 定义到 services
// type类型 定义到types里面

export const useConsultStore = defineStore(
  'cp-consult',
  () => {
    //  存储 接口空 type 字段的 值
    // 存储  问诊-保存/修改问诊订单中所有的  发送请求携带的 数据
    // consult 类型Ts 怎么定义呀？
    // consult  类型 就是  请求参数的类型? 先放在这里 等一下在定义类型 来进行校验
    const consult = ref<PartialConsult>({})
    // 存储极速问诊的字段
    const setType = (type: ConsultType) => {
      consult.value.type = type
      // consult.value.form = from 
    }
    //    极速问诊类型：0普通1三甲
    const setIllnessType = (type: 0 | 1) => {
      consult.value.illnessType = type
    }

    // 设置科室的  id setDep
    const setDep = (id: string) => {
      consult.value.depId = id
    }

    return {
      consult,
      setType,
      setIllnessType,
      setDep
    }
  },
  {
    // 存储到本地存储
    persist: true
  }
)
